package com.yuandian.ops.workbench.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;

import java.io.Serializable;

/**
 * @author zhoutian
 * @date 2020/10/13 17:24
 */
@Data
@HeadRowHeight(30)
public class BusinessDetailedListVo implements Serializable {

    /**
     * 序号
     */
    private int num;
    /**
     * 详单id
     */
    @ExcelIgnore
    private String id;
    /**
     * 业务名称
     */
    @ColumnWidth(25)
    @ExcelProperty(value = "业务名称")
    private String businessName;

    /**
     * 自定义返回码（是最后一个步骤返回码）
     */
    @ColumnWidth(25)
    @ExcelProperty(value = "自定义返回码")
    private String customResCode;


    /**
     * 电话号码(用户标识名称支持可配置)
     */
    @ColumnWidth(25)
    @ExcelProperty(value = "用户标识")
    private String userIdentify;


    /**
     * 开始时间
     */
    @ExcelIgnore
    private Long startTimeUsec;
    /**
     * 结束时间
     */
    @ExcelIgnore
    private Long endTimeUsec;


    /**
     * 开始时间
     */
    @ColumnWidth(25)
    @DateTimeFormat(value = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "开始时间")
    private String startTime;
    /**
     * 结束时间
     */
    @ColumnWidth(25)
    @DateTimeFormat(value = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "结束时间")
    private String endTime;

    /**
     * 业务状态
     */
    @ColumnWidth(25)
    @ExcelProperty(value = "业务状态")
    private String dealState;
    /**
     * 完整性
     */
    @ColumnWidth(25)
    @ExcelProperty(value = "完整性")
    private String completionState;

    /**
     * 办理时长（所有步骤响应时长累加值）
     */
    @ColumnWidth(20)
    @ExcelProperty(value = "办理时长")
    private String dealTime;

    /**
     * 客户端空闲时长
     */
    @ColumnWidth(25)
    @ExcelProperty(value = "客户端空闲时长")
    private String clientFreeTime;


    /**
     * 告警量
     */
    @ColumnWidth(25)
    @ExcelProperty(value = "告警数")
    private Integer alarmCount;

    /**
     * 专属指标
     */
    @ExcelIgnore
    private String exclusiveIndicator;

}
